This specification relates to digital data processing and, in particular, to caching techniques.
Various conventional techniques exist for cache allocation and replacement. For example, replacement techniques include Least-Recently Used (LRU), pseudo-LRU, First-in First-out (FIFO), and randomly replacing items. Typically, cache allocation and replacement techniques use information about the accesses to the cache to determine which items to leave in the cache and which items to replace. Some conventional systems allow the user of the cache to specify that certain items should not be placed in the cache, or that certain items need not stay in the cache for very long.